﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;

namespace PickGold.Callers
{
	/// <summary>
	/// 获取委托处理中的其它委托方法
	/// </summary>
	[ComVisible(true)]
	public interface IDelegateRunner
	{
		/// <summary>
		/// 根据传入的委托类型获取委托处理中的指定委托类型的委托
		/// </summary>
		/// <param name="delegateType">需返回的委托类型</param>
		/// <param name="handler">当前委托封装类</param>
		/// <param name="methodName">原方法名称</param>
		/// <returns>与传入类型相同的委托</returns>
		Delegate GetHandler(Type delegateType, IDelegate handler, string methodName, string typeName, string assemblyName);
	}
}
